
using System;

namespace SpotifyGenNHibernate.EN.Spotify
{
        public class RadioEN
        {
        /**
         *
         */

        private String idRadio;

        /**
         *
         */

        private int epoca;

        /**
         *
         */

        private String estilo;

        /**
         *
         */

        private System.Collections.Generic.IList<SpotifyGenNHibernate.EN.Spotify.ArtistaEN> artista;

        /**
         *
         */

        private System.Collections.Generic.IList<SpotifyGenNHibernate.EN.Spotify.UsuarioEN> usuario;





        public virtual String IdRadio { get { return idRadio; } set { idRadio = value;  } }


        public virtual int Epoca { get { return epoca; } set { epoca = value;  } }


        public virtual String Estilo { get { return estilo; } set { estilo = value;  } }


        public virtual System.Collections.Generic.IList<SpotifyGenNHibernate.EN.Spotify.ArtistaEN> Artista { get { return artista; } set { artista = value;  } }


        public virtual System.Collections.Generic.IList<SpotifyGenNHibernate.EN.Spotify.UsuarioEN> Usuario { get { return usuario; } set { usuario = value;  } }



        public RadioEN()
        {
        }



        public RadioEN(String idRadio, int epoca, String estilo, System.Collections.Generic.IList<SpotifyGenNHibernate.EN.Spotify.ArtistaEN> artista, System.Collections.Generic.IList<SpotifyGenNHibernate.EN.Spotify.UsuarioEN> usuario)
        {
                this.init (idRadio, epoca, estilo, artista, usuario);
        }


        public RadioEN(RadioEN radio)
        {
                this.init (radio.IdRadio, radio.Epoca, radio.Estilo, radio.Artista, radio.Usuario);
        }

        private void init (String idRadio, int epoca, String estilo, System.Collections.Generic.IList<SpotifyGenNHibernate.EN.Spotify.ArtistaEN> artista, System.Collections.Generic.IList<SpotifyGenNHibernate.EN.Spotify.UsuarioEN> usuario)
        {
                this.IdRadio = IdRadio;


                this.Epoca = epoca;

                this.Estilo = estilo;

                this.Artista = artista;

                this.Usuario = usuario;
        }

        public override bool Equals (object obj)
        {
                if (obj == null)
                        return false;
                RadioEN t = obj as RadioEN;
                if (t == null)
                        return false;
                if (IdRadio.Equals (t.IdRadio))
                        return true;
                else
                        return false;
        }

        public override int GetHashCode ()
        {
                int hash = 13;

                hash += (null == IdRadio ? 0 : this.IdRadio.GetHashCode ());
                return hash;
        }
        }
}
